package com.sihan.framework.etm.entity.baseData;

import com.framework.model.BaseModel;
import com.framework.mybatis.annotation.AutoGenerator;
import com.framework.mybatis.enums.IdType;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import lombok.*;

/**
 * 设备表
 */
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@Table(name = "jdx_etm_device")
public class DeviceModel extends BaseModel implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 设备ID
	 */
	@Id
	@Column(name = "ID")
	@GeneratedValue(strategy = GenerationType.AUTO)
	@AutoGenerator(idType = IdType.UUID32)
	private String id;

	/**
	 * 设备编号
	 */
	private String code;

	/***
	 * imei编号
	 */
	private String imeiCode;

	private String name;

	/**
	 * 厂家
	 */
	private String manufactorId;

	/**
	 * 设备类型
	 */
	private Integer type;

	/**
	 * 检定日期
	 */
	private Date testDate;

	/**
	 * 有效期
	 */
	private Date expireDate;

	/**
	 * 备注
	 */
	private String remarks;

	private String orgId;

	private String maintainUserId;

	private Date producteDate;

	private BigDecimal temperature;

	private Integer temperatureStat;

	private Integer deviceState;

	private Integer isDelete;

	private BigDecimal voltage;
	private Integer sendCount;//总的上传次数
	private Date sendNewTime;//待机开始时间
	private BigDecimal electricityPercent;//电量百分比

	private String typeId;//类型ID
	private String voltageGrade;//电压等级
	private String toolCode;//rfid编号

	/**
	 * 三项挂接A传感器编号
	 */
	private String hitchACode;

	/**
	 * 三项挂接B传感器编号
	 */
	private String hitchBCode;

	/**
	 * 三项挂接C传感器编号
	 */
	private String hitchCCode;

	private String hitchDCode;

	/**
	 * 初始定位经度
	 */
	private BigDecimal initialLng;

	/**
	 * 初始定位纬度
	 */
	private BigDecimal initialLat;

	/**
	 * 初始定位高度
	 */
	private BigDecimal initialHeight;

	/**
	 * 设备通讯编号
	 */
	private String communicationCode;

	/**
	 * 设备命令编号
	 */
	private String typeCommondCode;


}
